import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: syyyy
 * Date: 2025-07-17
 * Time: 14:12
 */

public class Test3 {
        public static void main(String[] args) throws Exception {
            Scanner scanner = new Scanner(System.in);
            while (scanner.hasNext()) {
                String className = scanner.next();
                // print就是需要你定义的方法
                print(Class.forName(className).newInstance());//括号里的方法是生成一个对象
            }
        }

        // write your code here......

        // 多态性，是子类的对象赋给了父类的引用，使用的前提是有继承关系、有方法的重写
        // 本题中的三个类都重写了toString()方法
        // 那么很显然，需要找到一个类，是本题中三个类的共同父类，又有toString()方法
        // 并且有forName()方法和newInstance()方法，以便在第10行的print()中能传入一个对象
        // 不用想了，平时就是用 Object类，它是所有类的父类，又拥有各种各样的方法

        // 找到该类以后，把这个类的对象作为参数传给print()，也就是“父类的引用”，
        // 并且在方法体中应用上三个子类都重写了的方法来实现需求
        // 这样，在Class.forName(className).newInstance()时，
        // 就会帮助创建出“子类的对象”
        //
        // 从而实现“父类的引用指向子类的对象”，即多态性

        public static void print(Object obj) {
            System.out.print(obj.toString());
        }



    class First {
        public String toString() {
            return "First";
        }

    }

    class Second {
        public String toString() {
            return "Second";
        }
    }

    class Third {
        public String toString() {
            return "Third";
        }
    }

}
